#!/bin/bash

# RuoYi-UI 生产环境构建脚本
# 用于构建 TZAI 管理后台前端

set -e

echo "======================================"
echo "开始构建 TZAI 管理后台（生产环境）"
echo "======================================"

# 检查 Node.js 版本
echo "1. 检查 Node.js 环境..."
node_version=$(node -v)
echo "Node.js 版本: $node_version"

# 检查 npm 版本
npm_version=$(npm -v)
echo "npm 版本: $npm_version"
echo ""

# 安装依赖（如果需要）
if [ ! -d "node_modules" ]; then
    echo "2. 安装依赖..."
    npm install
else
    echo "2. 依赖已存在，跳过安装"
fi
echo ""

# 清理之前的构建
echo "3. 清理之前的构建..."
rm -rf dist
echo "✅ 清理完成"
echo ""

# 构建生产环境
echo "4. 构建生产环境..."
echo "   - publicPath: /tzai/"
echo "   - outputDir: dist/"
echo "   - 启用 Gzip 压缩"
echo "   - 代码分割优化"
echo ""

npm run build:prod

echo ""
echo "======================================"
echo "✅ 构建完成！"
echo "======================================"
echo ""
echo "📦 构建产物位置: dist/"
echo ""
echo "📝 部署说明："
echo "1. 将 dist/ 目录下的所有文件上传到服务器"
echo "2. 配置 Nginx，将 /tzai 路径指向这些文件"
echo ""
echo "Nginx 配置示例："
echo "----------------------------------------"
echo "location /tzai/ {"
echo "    alias /usr/share/nginx/html/tzai/;"
echo "    try_files \$uri \$uri/ /tzai/index.html;"
echo "    index index.html;"
echo "    "
echo "    # Gzip 压缩"
echo "    gzip_static on;"
echo "    gzip_types text/plain text/css application/json application/javascript text/xml application/xml;"
echo "}"
echo "----------------------------------------"
echo ""
echo "🌐 访问地址: http://your-domain/tzai/"
echo ""
echo "📊 构建统计："
du -sh dist
echo ""

